// 基于node的 遵循commonjs规范的
const path = require('path');//node的路径模块
const HtmlWebpackPlugin = require('html-webpack-plugin')//多页面插件
module.exports = {
  // 入口
  //entry: './src/index.js',//单入口+单出口
  //entry:['./src/index.js','./src/a.js']  //多入口数组形式+单出口
  /*entry: {  //多入口多出口 并且在当前目录下生成js模块
        'index': path.resolve(__dirname,'src/index/js/index.js'),
        'a': :path.resolve(__dirname,'src/a/js/a.js')
  },*/
  entry:{   //多入口多出口 并且在指定目录下生成js模块
    'index/js/index':path.resolve(__dirname,'src/index/js/index.js'),
    'a/js/a':path.resolve(__dirname,'src/a/js/a.js'),
  },
  // 出口
  /*output:{
    filename:'build.js',
    path: path.resolve('./dist')
  }, */
  output: {
    path: path.resolve(__dirname, 'dist'), //生成文件输出路径
    filename: '[name].[hash].js',          //文件名
    publicPath:'../'                       //添加到模板html中的公共前缀
  },
  // 开发环境服务器配置
  /*devServer:{
    contentBase:'./dist',
    port:8080,
    compress:true,// 服务器压缩
    open:true,// 自动打开浏览器
    // hot:true//热更新
  },*/
  devServer:{
    //contentBase:[path.join(__dirname, "dist/index"), path.join(__dirname, "dist/a")],//path.resolve(__dirname,'dist'),
    host:'localhost',
    compress:true,
    port:8080,
    hot:true,
    publicPath:''
  },
  // 模块配置
  module:{},
  // 插件配置
  plugins:[
    //多页面配置
    new HtmlWebpackPlugin({
      minify: { removeAttributeQuotes:true},//是否压缩
      hash: true,
      template: './src/index/index.html',   //模板路径
      chunks:['index/js/index'],            //模板映入的模块
      filename:'./index/index.html'         //输出的文件名  可以指定到目录
    }),
    new HtmlWebpackPlugin({
      minify: {removeAttributeQuotes:true},
      hash: true,
      chunks:['a/js/a'],
      template: './src/a/a.html',
      filename:'./a/a.html'
    })
  ], // 插件的配置
  mode:'development', // 可以更改模式
  resolve:{}, // 配置解析
}
// 在webpack中如何配置开发服务器 webpack-dev-server
